The codes written between the #initclip and #endinitclip in movieclip from a Flash file (Fla) library that has been attached somewhere in the same flash file by using the linkage id will be executed first before the codes in the first frame of that movieclip. But, this option is completely removed from AS3.

The exact place where it is useful is the user defined component. Component should have pre-defined classes before its been used somewhere. For default components we don't need this as they are already linked. But for user defined components we should use this to register the movieclip as component and initialize the component classes before its been used somewhere. Check the simple code. The following code is written in a movieclip which will be attached to the stage using the linkage id.

AS2:
trace("Normal Check");
#initclip
trace("Check");
#endinitclip
trace("Check Again");


When you run the file it will trace in the following order.

Check
Normal Check
Check Again

So, the code we have written between #initclip and #endinitclip excutes the codes first before the other codes written in the first frame.

What is the use of Object.registerClass?

This can be used in custom component creation to register a class to a movieclip that will be attached using the linkage id. See the code,

AS2: (inside a movieclip on first frame)
#initclip
function DrawRectangle() {
    this.setPosition(this.x, this.y);
    this.drawShape(this.width, this.height, this.colour);
}
DrawRectangle.prototype = new MovieClip();
DrawRectangle.prototype.setPosition = function(x, y) {
    this._x = x;
    this._y = y;
};
DrawRectangle.prototype.drawShape = function(width, height, colour) {
    this.beginFill(colour, 100);
    this.moveTo(0, 0);
    this.lineTo(0, height);
    this.lineTo(width, height);
    this.lineTo(width, 0);
    this.lineTo(0, 0);
    this.endFill();
};
Object.registerClass("myClip", DrawRectangle);
#endinitclip
 
Initially the flash players were introduced to focus on manipulating 2D animations. Later, a big revolution was created by some new support of flash players like streaming of audios/videos and capability of creating RIA (Rich Internet Application) using Flash. From Flash player 6, you can stream audio files and video files with the extension of .mp3 and .flv respectively.
FLV is a container format of video which can be played in flash player directly by either downloading or streaming. Based on this technology you can find there are more popular website increasing their visitors everyday like youtube, metacase and many other websites. Though there are other options to play the video files in internet, flash player are mostly welcome only because of its light weight and video file's size.

Advanced flash technologies lead us to another extension of Multiplayer Games, Audio/Video Recording and A/V Chat Communication. Adobe Flash Media Server is one of the Flash Supporting server which let us to create multiplayer games and a/v chat communications. Server side coding is the same actionscript as it is in Flash.

I was working on a product of youtube video player clone. I didn't want to clone the exact player and also wanted to add some new features which is not available in youtube and other website players.

After few months, I was planning to create another AS2 video player with some other different options. So, I started developing a brand new player from the scratch. First I created a new and unique design and then I planned to add some tween functions to make it more shining. This player supports mid-roll advertisements and pre-roll, post-roll HTML advertisements. This player supports progress downloading and streaming as well.

AS2 Video Player 2:

Same as the above one, I wanted to create another player in AS3 which supports some additional features and some additional video formats like mp4. This player is called HD Player which is capable of playing HD videos like H264, M4V, M4A, MOV, Mp4v, F4V, H.264 and FLV.

AS3 HD Video Player: